/**
 * Project hdmap
 * @author shengjialiang
 * @version v1.0
 */


#ifndef _RAYTOOL_H
#define _RAYTOOL_H

#include "map_tool/ToolConfig.h"
#include "map_dataset/IDataSet.h"
#include <osgViewer/Viewer>
#include "map_common/ObjectMap.h"
#include "map_dataset/DataType.h"
#include "map_common/IEvent.h"
#include "map_common/IEventHandler.h"
#include "map_datarender/GeneralRenderObject.h"

namespace Tool
{

	class MAP_TOOL_EXPORT CSelectEvent
		: public Common::IEvent
	{
	public:
		CSelectEvent()
		{
			SelectObject = NULL;
		}

		virtual ~CSelectEvent()
		{

		}

	public:
		DataRender::IRenderObject* SelectObject;
	};

	class MAP_TOOL_EXPORT CPointSelectTool 
		: public osgGA::GUIEventHandler,
		public Common::CEventHandlerRegister
	{
	public :
		CPointSelectTool();

		virtual ~CPointSelectTool();

		bool handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa);
	};

	
}
#endif //_RAYTOOL_H